React DOM 包含仅支持 Web(在浏览器 DOM 环境中运行)的 Hooks。这些 Hook 在 iOS、Android、Windows、canvas 等非 DOM 环境中不受支持

Form Hooks

useFormStatus(实验特性)

根据表单的状态更新 UI,提供上次表单提交的状态信息

const { pending, data, method, action } = useFormStatus()

举例:

function Form({ action }) {
  async function increment(n) {
    return n + 1;
  }
  const [count, incrementFormAction] = useActionState(increment, 0);
  return (
    <form action={action}>
      <button formAction={incrementFormAction}>Count: {count}</button>
      <Button />
    </form>
  );
}

function Button() {
  const { pending } = useFormStatus();
  return (
    <button disabled={pending} type="submit">
      Submit
    </button>
  );
}

注意: